package com.atguigu.gmall.cart.mapper;

import com.atguigu.gmall.model.cart.CartInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * 订单mapper层
 * @author 搭忆长安
 * @version 1.0
 * @date 2021年07月09日 16:48
 * @ClassName:CartInfoMapper
 * @Description: TODO
 */
@Mapper
public interface CartInfoMapper extends BaseMapper<CartInfo> {

    /**
     * 登录用户新增购物车
     * @param skuId
     * @param num
     * @param userId
     * @return
     */
    public void addCart(Long skuId, Integer num, String userId);

    /**
     * 临时用户新增购物车
     * @param skuId
     * @param num
     * @param userId
     * @return
     */
    public String addCartTemp(Long skuId, Integer num, String userId);

    /**
     * 删除购物车数据
     * @param userId
     * @param skuId
     */
    public void deleteCart(Long skuId, Long userId);

    /**
     * 查询购物车信息
     * @param userId
     * @param tempUserId
     * @return
     */
    public List<CartInfo> getCartInfoList(String userId, String tempUserId);

    /**
     * 查询用户选中的购物车信息
     * @param userId
     * @return
     */
    public Map<String, Object> getChooseCartInfo(Long userId);

    /**
     * 查询用户选中的购物车信息
     * @param userId
     * @return
     */
    public List<CartInfo> getChooseCartInfoList(Long userId);
}
